/*
* Copyright (c) Huawei Technologies Co., Ltd. 2017-2019. All rights reserved.
* Description: ff demuser
* Author: HiMobileCam middleware develop team
* Create: 2017-12-22
*/

#ifndef FF_DEMUX_H
#define FF_DEMUX_H

#include "hi_type.h"
#include "hi_demuxer.h"

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif /* End of #ifdef __cplusplus */

HI_S32 FfDemuxOpen(HI_VOID **outFormat, const HI_CHAR fileName[]);

HI_S32 FfDemuxClose(HI_VOID *format);

HI_S32 FfDemuxRead(HI_VOID *format, HI_FORMAT_PACKET_S *fmtFrame);

HI_S32 FfDemuxFree(HI_VOID *format, const HI_FORMAT_PACKET_S *fmtFrame);

HI_S32 FfDemuxSeek(HI_VOID *format, HI_S32 streamIndex, HI_S64 toMs, HI_S32 flag);

HI_S32 FfDemuxProbe(HI_VOID *format);

HI_S32 FfDemuxGetinfo(HI_VOID *format, HI_FORMAT_FILE_INFO_S *fmtInfo);

HI_S32 FfDemuxSetattr(HI_VOID *format, HI_FORMAT_MEDIA_ATTR_S *fmtInfo);

#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* __cplusplus */

#endif /* FF_DEMUX_H */
